Numerical control apparatus and numerical control method

ABSTRACT

A numerical control apparatus for controlling a machine tool to simply and accurately cyclically machine a workpiece. When the operator enters graphic data such as circular or rectangular graphic data in an interactive fashion from a keyboard or the like according to guidance information displayed on a display unit, a graphic data memory device stores the entered graphic data. A converting device calculates a machining path for cyclically machining a workpiece based on the graphic data and converts the machining path into NC commands, which are then stored in an NC command memory device. An interpolating device outputs an interpolated pulse signal to move the machine tool along the cyclic machining path based on a pulse signal from a manual pulse generator or a jog feed button on a machine control console. By freely operating the machine control console, the operator can easily and accurately effect cyclic machining on a workpiece while confirming a machined status.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a numerical control apparatus and anumerical control method for controlling a machine tool, and moreparticularly to a numerical control apparatus and a numerical controlmethod for controlling a machine tool which machines prototypes or thelike.

2. Background Art

Advances in the technology of numerically controlled machine tools havebeen so great that they can machine workpieces of complex shape at highspeed with precision. At present, workpieces of complex shape cannot bemachined without numerically controlled machine tools.

To generate machining programs, there are widely used interactivenumerical control apparatus which comprise a numerical control apparatuswith an interactive program generating function, and automaticprogramming apparatus for simply generating complex machining programs.

In the use of such numerical control apparatus, it is necessary toaccurately define machine coordinates, a machine origin, programcoordinates, a machining origin, and other data for generating strictmachining programs. The interactive numerical control apparatus and theautomatic programming apparatus can be used to machine a number ofworkpieces.

For some machining processes for producing a prototype or a model,general-purpose milling machines, lathes, and the like are used whichrequire a short period of time to carry out preparatory action such asattachment and detachment of workpieces, installation of tools, etc.,and does not require machining programs to be generated. Machining onsuch machines or lathes has been carried out solely at the discretion ofthe operator.

Problems of general-purpose machine tools are that the number ofavailable operators who can handle general-purpose machine tools isbecoming smaller, and it is difficult for the general-purpose machinetools to carry out oblique linear machining, arcuate machining, or thelike though they can effect linear machining without any problem.

If, on the other hand, a general numerically controlled machine tool isused to machine a prototype or a model, then it is necessary toaccurately define machine coordinates, a machine origin, programcoordinates, a machining origin, and other data. While it is notimpossible to define those data, the required programming process is tootime-consuming and troublesome for machining a portion of a singleworkpiece.

To solve the above problems, the applicant has filed Japanese patentapplication No. 4-231836 on a numerical control apparatus which employsa general-purpose machine tool for carrying out simple machiningprocesses to machine prototypes or the like.

Such a numerical control apparatus is widely used for machining aportion of a workpiece. Where a workpiece is to be machined into arelatively simple shape, the operator may want to machine the workpieceto its final shape. With the above numerical control apparatus, however,the operator himself is required to calculate all machining cycles andoperate the tools, resulting in a time-consuming and tedious workingprocess. Conversely, if a general numerical control apparatus is used,then since it is necessary to define machine coordinates, a machineorigin, program coordinates, a machining origin, and other data, it istoo time-consuming and tedious to machine only one workpiece on thegeneral-purpose numerical control apparatus.

One frequent machining process performed when a prototype is to beproduced by a machine tool is drilling. According to one drillingprocess, a workpiece is drilled at a group of points along a certainpath on the workpiece. In such a drilling process, after a hole isformed at a certain point with a drilling machine, it is necessary toset and position the drill for a next hole. Accordingly, the drillingprocess has been complex, and it has been time-consuming to form holesat many points. The drill has not necessarily been positioned accuratelyas it has been positioned based on eye measurement. In view of the abovebackground, there has been a demand for drilling a workpiece simply andaccurately at a group of points thereon using the functions of anumerical control apparatus incorporated in a machine tool.

In the above numerical control apparatus, it has been customary togenerate a designated shape based on the information which has beenentered according to guidance information, and feed a tool along thedesignated shape by operating a manual pulse generator or the like whena workpiece is machined. The designated shape is only a portion, e.g., alinear portion or a corner portion, of an entire machining shape.Therefore, even when the workpiece is to be machined for the entiremachining shape, it can only be machined from portion to portion in theentire machining shape, and cannot continuously be machined for theentire machining shape. Furthermore, when a plurality of workpieces areto be machined to the same shape, they have to be machined one by onebecause the entire machining shape for them is not recognized.

SUMMARY OF THE INVENTION

In view of the above problems, it is an object of the present inventionto be able to effect cyclic machining simply and accurately using thefunctions of a numerical control apparatus incorporated in a machinetool.

Another object of the present invention is to provide a numericalcontrol apparatus capable of drilling a workpiece simply and accuratelyat a group of points.

Still another object of the present invention is to provide a numericalcontrol method capable of machining a workpiece continuously for anentire machining shape when the workpiece is machined along a designatedshape by operating a manual pulse generator or the like.

To achieve the above objects, there is provided in accordance with thepresent invention a numerical control apparatus for controlling amachine tool having at least two axes, comprising graphic data memorymeans for storing graphic data for cyclic machining entered in aninteractive fashion according to guidance information, converting meansfor calculating a machining path for cyclically machining a workpiecebased on said graphic data and converting said machining path into NCcommands, NC command memory means for storing said NC commands, movementcommand means for outputting a pulse signal to command movement of atool, and interpolating means for outputting an interpolated pulsesignal to move said tool along said machining path based on the pulsesignal outputted from said movement command means.

When the operator enters graphic data such as circular or rectangulargraphic data in an interactive fashion from a keyboard or the likeaccording to guidance information displayed on a display unit, thegraphic data memory means stores the entered graphic data.

The converting means calculates a machining path for cyclicallymachining a workpiece based on the graphic data and converts themachining path into NC commands, and the NC command memory means storesthe NC commands. The movement command means outputs a pulse signal forcommanding movement of the tool. The pulse signal is outputted dependingon the operation of the operator.

The interpolating means outputs an interpolated pulse signal to move thetool along the cyclic machining path based on the pulse signal from themovement command means.

Therefore, by freely operating the movement command means, the operatorcan easily and accurately effect cyclic machining on a workpiece whileconfirming a machined status.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of a numerical control apparatus accordingto a first embodiment of the present invention;

FIG. 2 is a block diagram of a hardware arrangement of the numericalcontrol apparatus according to the first embodiment;

FIG. 3 is a view showing a machine control console by way of example;

FIG. 4 is a view showing a graphic data entering screen display imagefor cyclically machining a circular pocket;

FIG. 5 is a diagram illustrative of a specific procedure for cyclicallymachining a circular pocket;

FIG. 6 is a schematic diagram of a numerical control apparatus accordingto a second embodiment of the present invention;

FIG. 7 is a view showing a guidance selection screen display image forselecting a point group pattern;

FIG. 8 is a view showing a guidance screen display image for generatinga point group pattern;

FIG. 9 is a view showing a guidance screen display image for generatinga machining shape;

FIG. 10 is a view illustrative of a playback function for machining aworkpiece along a final machining shape;

FIG. 11 is a flowchart of a processing sequence of a third embodiment ofthe present invention; and

FIG. 12 is a view showing a machine control console by way of example.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

An embodiment of the present invention will hereinafter be describedbelow with reference to the drawings.

FIG. 1 schematically illustrates a numerical control apparatus accordingto a first embodiment of the present invention. The numerical controlapparatus has a graphic data memory means 1 for displaying guidanceinformation through a graphic control circuit 15 on a display unit 16,and storing graphic data that have been entered in an interactivefashion according to guidance information by the operator whileoperating a keyboard 17. The graphic data include command data such as afeed speed F. The stored graphic data are displayed, if necessary, onthe display unit 16 through the graphic control circuit 15. A procedurefor generating such graphic data will be described in detail later on.

The numerical control apparatus has a converting means 2 whichcalculates a machining path for cyclically machining a workpiece basedon the graphic data and converts the machining path into NC commands,which are then stored in an NC command memory means 3.

The numerical control apparatus also has a selecting means 6 forselecting a pulse signal for commanding the speed at which a tool is tomove. The selecting means 6 is supplied with a pulse signal HP from amanual pulse generator 41, a pulse signal GJ corresponding to theturning-on of a jog feed button on a machine control console 40, or afeed command pulse signal f. The feed command pulse signal f is a pulsesignal depending on the feed speed command F that has been presettogether with graphic data according to guidance information. In thisembodiment, the feed command pulse signal f is generated byfrequency-dividing a clock signal CLD from a clock circuit (not shown)based on the feed speed command F.

The pulse signal GJ that is produced when a jog feed button is turned onis generated as follows: A frequency-dividing means 5 is supplied withthe clock signal CLD and a set signal SS from a setting switch on themachine control console 40. The frequency-dividing means 5 generates thepulse signal GJ by frequency-dividing the clock signal CLD with the setsignal SS. The pulse signal GJ is sent to the selecting means 6depending on the turning-on signal from the jog feed button.

The selecting means 6 is also supplied with, other than the above pulsesignals, a selecting signal LS indicative of "MANUAL" or "AUTOMATIC"selected by an operation changing switch (FIG. 3), described later on,on the machine control console 40.

If the selecting signal from the operation changing switch (FIG. 3)indicates "MANUAL", then the selecting means 6 sends either one of thepulse signal transmitted by manual operation, i.e., the pulse signals HPfrom the manual pulse generator 41, and the pulse signal GJ from the jogfeed button (FIG. 3), described later on, to an interpolating means 4.If the selecting signal from the operation changing switch indicates"AUTOMATIC", then the selecting means 6 sends the feed command pulsesignal f depending on the feed speed command F to the interpolatingmeans 4 after confirming that a cycle start button on the machinecontrol console 40 has been pressed.

The interpolating means 4 interpolates the pulse signal transmitted fromthe selecting means 6, and outputs an interpolated pulse signal.Specifically, the interpolating means 4 generates an interpolated pulsesignal for moving a tool along a cyclic machining path, and outputs theinterpolated pulse signal to an axis control circuit 18, which actuallycomprises circuits for respective three axes. In response to theinterpolated pulse signal from the interpolating means 4, the axiscontrol circuit 18 generates speed commands for the respective axes, andsends the speed commands to a servoamplifier 19. The servoamplifier 19energizes servomotors on a machine tool 20 to control the machine tool20.

FIG. 2 is a block diagram of a hardware arrangement of the numericalcontrol apparatus according to the first embodiment. A processor 11controls the numerical control apparatus in its entirety according to asystem program stored in a ROM 12. The graphic data memory means 1, theconverting means 2, the NC command memory means 3, the interpolatingmeans 4, the frequency-dividing means 5, and the selecting means 6 shownin FIG. 1 are software-implemented functions performed by the processor11 according to the system program stored in the ROM 12. The ROM 12comprises an EPROM or an EEPROM. A RAM 13, which comprises an SRAM orthe like, stores temporary data such as input and output signals and thelike. A nonvolatile memory 14 comprises a CMOS that is backed up by abattery (not shown). The nonvolatile memory 14 stores various data suchas parameters, machining programs, etc. which are to be retained afterthe power supply is turned off.

The graphic control circuit 15 converts guidance information, enteredgraphic data and machining cycle, and the like into a displayablesignal, and supplies the displayable signal to the display unit 16. Thedisplay unit 16 comprises a CRT or a liquid crystal display panel. Theaxis control circuit 18 (for three axes) receives axis movement commandsincluding the interpolated pulse signal from the processor 11 andoutputs the axis movement commands to the servoamplifier 19 (for threeaxes). In response to the axis movement commands, the servoamplifier 19energizes the servomotors (not shown) on the machine tool 20. Themachine tool 20 has, in addition to the servomotors, the machine controlconsole 40 operable for entering movement commands as described indetail later on. These components are interconnected by a bus 30.

A PMC (programmable machine controller) 22 receives a T function signal(tool selection command) and the like through the bus 30 when a machineprogram is to be executed. The PMC processes the received signalaccording to a sequence program, and outputs a signal as an operationcommand to control the machine tool 20. In an interactive numericalcontrol apparatus configuration, the PMC 22 receives a status signalfrom the machine tool 20, processes the received signal according to asequence program, and transfers a required input signal to the processor11 through the bus 30.

To the bus 30, there is also connected a software key 23 whose functionvaries depending on the system program. The software key 23, the displayunit 16, and the keyboard 17 are mounted on a CRT/MDI panel 25.

FIG. 3 is a view showing the machine control console on the machine toolby way of example. The machine control console 40 shown in FIG. 3 hasthe manual pulse generator 41, a selector switch 41b, jog feed buttons42, a setting switch 42a, a direction changing switch 43, an operationchanging switch 44, and a cycle start button 45.

When a handle 41a is turned to the left or right, the manual pulsegenerator 41 generates a pulse signal depending on the rotation of thehandle 41a. The pulse signal, which is composed of two-phase pulses fordetermining the direction in which the handle 41a is turned, is sentthrough the bus 30 to the processor 11 for moving the tool.

The selector switch 41b is a switch for selecting a pulse signalgenerated by the manual pulse generator 41 in either an X-axis direction(X), a Y-axis direction (Y), a Z-axis direction (Z), or a direction (G)which corresponds to the cyclic machining path in the graphic data.

The jog feed buttons 42 comprise a total of 8 buttons including positiveand negative feed buttons "+X", "-X", "+Y", "-Y", "+Z" and "-Z" for therespective axes, and positive and negative feed buttons "+GJ", "-GJ"corresponding to the cyclic machining path in the graphic data. When theabove tool movement is to be effected by operating a jog feed button 42,the feed button "+GJ" is used. A turning-on signal produced when thisjog feed button 42 is pressed is sent through the PMC 22 and the bus 30to the processor 11, and processed in a predetermined fashion.

The setting switch 42a sets the number of pulses in a certain period oftime which are generated when the jog feed buttons 42 are pressed. Aswith the turning-on signal from the jog feed buttons 42, the set signalSS produced by the setting switch 42a is sent through the PMC 22 and thebus 30 to the processor 11, and processed by the frequency-dividingmeans 5.

The direction changing switch 43 is a switch for selecting whether thetool is to be moved parallel to a designated shape generated accordingto the guidance information or to be moved perpendicularly to thedesignated shape, when "G" is selected by the selector switch 41b andthe manual pulse generator 41 is operated. When the direction changingswitch 43 is set to "H", the tool moves parallel to the designatedshape. When the direction changing switch 43 is set to "V", the toolmoves perpendicularly to the designated shape.

The operation changing switch 44 is a switch for selecting whether thetool movement based on the graphic data is to be effected manually orautomatically. When the operation changing switch 44 is set to "M", thetool moves manually. When the operation changing switch 44 is set to"Au", the tool moves automatically according to the feed speed commandF.

The cycle start button 45 is a switch for starting an automatic feedwhile the operation changing switch 44 is being set to "Au".Specifically, when the cycle start button 45 is pressed at the time thetool is to be moved to a next machining position, the tool automaticallycarries out cyclic machining.

Now, a procedure for effecting cyclic machining based on a guidancefunction will be described below.

FIG. 4 is a view showing a graphic data entering screen display imagefor cyclically machining a circular pocket. The graphic data enteringscreen display image for cyclically machining a circular pocket isdisplayed on the display screen of the display unit 16. The graphic dataentering screen display image includes a present position display column51 in its upper left area for displaying the present position of thetool, a tool status display column 52 in its upper right area fordisplaying the current status and the like of the tool, and a dataentering image 53 in its lower area for entering graphic data.

The present position display column 51 includes an X-coordinate column,a Y-coordinate column, and a Z-coordinate column as indicating thepresent position of the tool. The tool status display column 52 includesa distance display column for indicating the distance (D) between thetool and the designated shape, and a tool diameter display column forindicating the tool diameter (φ).

The data entering image 53 displays in its right area a finished statusdiagram 53a for circular pocket cyclic machining. The finished statusdiagram 53a is determined by the elements of a circle center (X, Y), aradius R, a finishing margin V, a tool diameter φ, and a feed speed F.The data entering image 53 displays in its left area a center (X, Y)entering column 53b, a radius entering column 53c, a finishing marginentering column 53d, a tool diameter entering column 53e, and a feedspeed entering column 53f, which correspond respectively to the elementsfor determining the finished status diagram.

If the entered value for the radius R is positive, then the tool movesclockwise, and if the entered value for the radius R is negative, thenthe tool moves counterclockwise. The finishing margin V is a depth towhich the tool cuts for finishing the workpiece. If no value is set forthe finishing margin, V or 0 is set and, therefor, the workpiece is notfinished. If the finishing margin V is of a positive value, then theworkpiece is roughly machined to the designated shape plus the finishingmargin. If the finishing margin V is of a negative value, then theworkpiece is roughly machined to the designated shape minus thefinishing margin.

In addition to the above data entering columns, the data entering image53 displays a message display column 53g and a software key menu column53h. When data in the data entering columns are entered, graphic datafor circular pocket cyclic machining are generated, and stored in thegraphic data memory means 1. Then, the message display column 53gdisplays a flickering message "PRESS [START]". When the operator pressesa function key on the keyboard 17 which corresponds to [START] in thesoftware key menu column 53h according to the displayed message, thetool automatically moves to the central position of the pocket, and acyclic machining process based on the guidance function is started.

FIG. 5 is a diagram illustrative of a specific procedure for cyclicallymachining a circular pocket. It is assumed that a tool 61 is first inthe position of a point P and is to cyclically machine a workpiece to adesignated shape 60 at a pocket central position Q, and that apreparatory hole has already been formed at the pocket central positionQ. When the operator presses [START] in the software key menu column53h, the tool 61 automatically moves from the position of the point P tothe pocket central position Q.

After the tool movement is completed, the operator operates the handle41a and the jog feed button (GJ) 42 to start the pocket machiningprocess. The tool 61 first cuts the workpiece by a width in the X-axisdirection from the pocket central position Q. Then, the tool 61 cuts theworkpiece along a circle r1. When the cutting along the circle r1 isfinished, the tool 61 cuts the workpiece successively along circles r2,r3, rn. When the cutting up to the designated shape 60 is finished, thetool 61 automatically moves to the pocket central position Q and stops.

In the cyclic machining process, when the handle 41a is used, theselector switch 41b on the machine control console 40 is set to "G", theoperation changing switch 44 is set to "M", the direction changingswitch 43 is set to "H", and the handle 41a is turned to the right. Thetool 61 moves at a speed proportional to the speed at which the handle41a is turned. When the handle 41a is turned to the left, the tool 61moves back along the cut path.

When the jog feed buttons 42 are used, the selector switch 41b is set to"G", the operation changing switch 44 is set to "M", the directionchanging switch 43 is set to "H", and the jog feed button 42 "+GJ" ispressed. As long as the jog feed button 42 "+GJ" is pressed, the tool 61moves at a feed speed set by the setting switch 42a. When the jog feedbutton 42 "-GJ" is pressed, the tool 61 moves back along the cut path.

In this embodiment, automatic feeding can be carried out other thanusing the handle 41a and the jog feed buttons 42. To effect suchautomatic feeding, the operation changing switch 44 is set to "Au", thedirection changing switch 43 is set to "H", and the cycle start button45 is pressed. The tool 61 now moves at a feed speed F entered on thescreen display image shown in FIG. 4, and automatically effects cyclicmachining.

Whether the tool 61 is moved either manually by the handle 41a or thejog feed buttons 42 or automatically can be selected even while the tool61 is moving. For example, if the operator wants to switch to automaticfeeding while the tool 61 is being moved by the handle 41a, then theoperator may shift the operation changing switch 44 from "M" to "Au",and the tool movement immediately switches to automatic feeding.Switching from the tool movement using the jog feed buttons 42 toautomatic feeding or vice versa can be effected simply by shifting theoperation changing switch 44.

As described above, since the designated shape 60 is entered and thetool 61 is controlled for cyclic machining by a desired feedingoperation, the operator can easily and accurately machine the workpiececyclically while confirming the machined status.

In the above embodiment, the machining of a workpiece to form a circularpocket has been described. However, the present invention is alsoapplicable to other machining processes, e.g., other pocket machining toform a rectangular pocket, a track pocket, or the like, or other shapemachining to form a planar surface, a side surface, or the like.

While the above embodiment has been described with respect to a millingmachine, the present invention is also applicable to other machine toolssuch as a lathe or the like.

The above guidance function may be incorporated in an ordinary numericalcontrol apparatus, or may be arranged as an especially inexpensivenumerical control apparatus.

According to the first embodiment, as described above, the tool is movedalong a cyclic machining path depending on the output of a pulse signalfrom a movement command means. Therefore, when the operator freelyoperates the movement command means, the operator can easily andaccurately effect cyclic machining while confirming a machined status.

Functions for simply drilling a workpiece at a group of points will bedescribed below. The hardware (FIG. 2) of a numerical control apparatusand a machine control console (FIG. 3) for performing such functions arethe same as those of the first embodiment.

FIG. 6 is a schematic diagram of a numerical control apparatus accordingto a second embodiment of the present invention. The numerical controlapparatus includes a point group data memory means la for displayingguidance information through a graphic control circuit 15 on a displayunit 16, and storing point group data that have been entered in aninteractive fashion according to guidance information by the operatorwhile operating a keyboard 17. The stored point group data aredisplayed, if necessary, on the display unit 16 through the graphiccontrol circuit 15. A procedure for generating such point group datawill be described in detail later on.

The numerical control apparatus has a converting means 2a which convertsthe point group data into NC commands, which are then stored in an NCcommand memory means 3a.

The numerical control apparatus also has a selecting means 6a forselecting a pulse signal for commanding the speed at which a tool is tomove. The selecting means 6a is supplied with a pulse signal HP from amanual pulse generator 41, a pulse signal GJ corresponding to theturning-on of a jog feed button 42 (FIG. 3) on a machine control console40, or a feed command pulse signal f. The feed command pulse signal f isa pulse signal depending on the feed speed command F that has beenpreset together with point group data according to guidance information.In this embodiment, the feed command pulse signal f is generated byfrequency-dividing a clock signal CLD from a clock circuit (not shown)based on the feed speed command F.

The pulse signal GJ that is produced when a jog feed button 42 is turnedon is generated as follows: A frequency-dividing means 5a is suppliedwith the clock signal CLD and a set signal SS from the setting switch42a (FIG. 3) on the machine control console 40. The frequency-dividingmeans 5 generates the pulse signal GJ by frequency-dividing the clocksignal CLD with the set signal SS. The pulse signal GJ is sent to theselecting means 6a depending on the turning-on signal from the jog feedbutton 42. The jog feed button 42 turned on at this time is a feedbutton "+GJ" (FIG. 3) for feeding the tool along a designated path.

The selecting means 6a is also supplied with, other than the above pulsesignals, a selecting signal LS indicative of "MANUAL" or "AUTOMATIC"selected by the operation changing switch 44 (FIG. 3) on the machinecontrol console 40.

If the selecting signal from the operation changing switch 44 indicates"MANUAL", then the selecting means 6a sends either one of the pulsesignals transmitted by manual operation, i.e., the pulse signal HP fromthe manual pulse generator 41 or the pulse signal GJ from the jog feedbutton 42, to an interpolating means 4a. If the selecting signal fromthe operation changing switch 44 indicates "AUTOMATIC", then theselecting means 6a sends the feed command pulse signal f depending onthe feed speed command F to the interpolating means 4a after confirmingthat the cycle start button 45 (FIG. 3) on the machine control console40 has been pressed.

The interpolating means 4a interpolates the pulse signal transmittedfrom the selecting means 6a, and outputs an interpolated pulse signal.Specifically, the interpolating means 4a generates an interpolated pulsesignal for moving a tool to a next point designated by an NC commandwhen the machining at one point of the point group data is completed,and outputs the interpolated pulse signal to an axis control circuit 18,which actually comprises circuits for respective three axes. In responseto the interpolated pulse signal from the interpolating means 4a, theaxis control circuit 18 generates speed commands for the respectiveaxes, and sends the speed commands to a servoamplifier 19. Theservoamplifier 19 energizes servomotors on a machine tool 20 to controlthe machine tool 20.

Now, a procedure for generating the point group data will be describedbelow with reference to FIGS. 7 and 8.

FIG. 7 is a view showing a guidance selection screen display image forselecting a point group pattern. The guidance selection screen displayimage 16a is displayed on the display unit 16. The guidance selectionscreen display image 16a first indicates four point group patterns asshown. The four group patterns include a point group pattern on acircumference, a point group pattern on an arc, a point group pattern ona rectangle, and a point group pattern on a grid. When a software key(not shown) is pressed, a next guidance selection screen display image16b is displayed, indicating a point group pattern at optional points.The operator selects a required one of these five point group patterns.

FIG. 8 is a view showing a guidance screen display image for generatinga point group pattern. When the point group pattern on the circumferenceis selected on the guidance selection screen display image shown in FIG.7, the guidance screen display image 16c shown in FIG. 8 is displayed.

The guidance screen display image 16c includes a present positiondisplay column 151 in its upper left area for displaying the presentposition of the tool, a tool status display column 152 in its upperright area for displaying the current status and the like of the tool,and a data entering image 153 in its lower area for entering point groupdata. The present position display column 151 includes an X-coordinatecolumn, a Y-coordinate column, and a Z-coordinate column as indicatingthe present position of the tool. The tool status display column 152includes a distance display column for indicating the distance (D)between the tool and the designated shape, and a tool diameter displaycolumn for indicating the tool diameter (φ).

The data entering image 153 displays in its right area a point grouppattern status diagram 153a for the point group pattern on thecircumference. The point group pattern on the circumference isdetermined by the elements of a circle center (X, Y), a radius R, astarting point angle A, and the number P of holes. The starting pointangle A is an angle on the circumference of the position where the firsthole is to be drilled, and is defined with respect to a line parallel tothe X-axis at 0°. The positions of P holes are arranged at equaldistances on the circumference.

The data entering image 153 displays in its left area a center (X, Y)entering column 153b, a radius R entering column 153c, a starting pointangle A entering column 153d, and a hole number P entering column 153e,which correspond respectively to the elements for determining the pointgroup pattern. In addition to the above data entering columns, the dataentering image 153 displays a software key menu column 153f. When datain the data entering columns are entered, point group data aregenerated, and stored in the point group data memory means 1a.

When the operator presses a function key on the keyboard 17 whichcorresponds to [START] in the software key menu column 153f, the toolmoves to a position where it will start drilling the workpiece. The toolis moved upon operation by the operator of the manual pulse generator41, the jog feed buttons 42, or the cycle start button 45. When the toolreaches the position to start machining the workpiece, the tool stops.In that position, the operator manually operates a drilling machine, forexample, to drill the workpiece. When the drilling at this position isfinished, the operator operates again the manual pulse generator 41, thejog feed buttons 42, or the cycle start button 45, and the tool moves toa next machining position. When the tool reaches the next machiningposition, the tool stops. This operation is repeated successively at therespective positions of the point group data for completing the drillingprocess with respect to the point group pattern.

As described above, the tool moves successively to next drillingpositions according to the point group data that have been generated onthe guidance screen display image. Therefore, even if a general-purposemachine tool is used to drill a workpiece at a group of points, the toolcan simply and accurately be moved to each of the points.

The generation of a group of points on a circumference has beendescribed above. However, the generation of other point group patternscan be effected in the same manner as described above.

In the second embodiment, when machining at one point of point groupdata is finished, the tool moves to a next point and stops according tothe operation of the operator. Such a process is repeated to machine theworkpiece with respect to all the points of the point group data.Consequently, even if a general-purpose machine tool is used to machinea workpiece at a group of points, it is possible to move the tool simplyand accurately to each of the points.

While the drilling process has been described above, the presentinvention is also applicable to other machining processes such as acutting process. In such a case, when cutting is finished at eachmachining position, the tool moves to and stops at a next machiningposition.

Though the above embodiment has been described with respect to adrilling machine, the present invention is also applicable to othermachine tools such as a lathe or the like.

The above guidance function may be incorporated in an ordinary numericalcontrol apparatus, or may be arranged as an especially inexpensivenumerical control apparatus.

According to the second embodiment, as described above, the tool ismoved to and stopped at a next point when machining at one point ofpoint group data is finished. The workpiece can be machined with respectto all the points of the point group data by repeating the aboveprocess. Thus, even if a general-purpose machine tool is used to machinea workpiece at a group of points, it is possible to move the tool simplyand accurately to each of the points.

A third embodiment for continuously machining a workpiece to an entiredesignated machining shape will be described below. The hardware of anumerical control apparatus in the third embodiment is the same as thatof the first embodiment (FIG. 2).

A procedure for generating a machining shape according to a numericalcontrol process according to the present invention will be describedwith reference to FIGS. 9 and 10.

FIG. 9 is a view showing a guidance screen display image for generatinga machining shape. When the operator selects oblique linear machiningfrom a machining guidance menu image which is displayed, a guidancescreen display image 160 is displayed on the display unit 16 (FIG. 2) ofthe numerical control apparatus. The machining guidance menu imagedisplays, other than oblique linear machining, arcuate machining,full-circle machining, corner R machining, corner C machining, planarmachining, pocket machining, etc. The operator selects a menu indicativeof a shape to be designated (an oblique linear shape in this embodiment)from the machining guidance menu image.

The guidance screen display image 160 includes a present positiondisplay column 251 in its upper left area for displaying the presentposition of the tool, a tool status display column 252 in its upperright area for displaying the current status and the like of the tool,and a data entering image 250 in its lower area for entering graphicdata. The present position display column 251 includes an X-coordinatecolumn, a Y-coordinate column, and a Z-coordinate column as indicatingthe present position of the tool. The tool status display column 252includes a distance display column for indicating the distance (D)between the tool and the designated shape, and a tool diameter displaycolumn for indicating the tool diameter (φ).

The data entering image 250 displays in its right area an obliquestraight line 253 which is a designated shape. The oblique straight line253 is determined by a starting point (X1, Y1), an ending point (X2,Y2), and an angle A.

The data entering image 250 displays in its left area OBLIQUE LINEARMACHINGING 254 indicative of oblique linear machining, and including astarting point entering column 255, an ending point entering column 256,and an angle entering column 257. In addition to these data enteringcolumns, the data entering image 250 includes a tool diameter (φ)entering column 258 and a software key menu column 259. In the softwarekey menu column 259, when a function key on the keyboard 17 (FIG. 2) ispressed, a corresponding menu mode is initiated, changing the screendisplay image.

When the guidance screen display image 160 is displayed, the operatorfirst selects a mode of [TC START] in the software key menu column 259,entering a teaching mode for the generation of a machining shape. Atthis time, the data entering image 250 displays "OBLIQUE LINEARMACHINING" and "TEACHING" on its uppermost line. At the same time, thedisplayed [TC START] in the software key menu column 259 changes to [TCEND].

In the guidance screen display image 160, when the operator enters datain each of the data entering columns, a designated shape for an obliquestraight line is generated. Then, the operator operates the manual pulsegenerator 41 or the like to move the tool to an end point position onthe designated shape. When the tool reaches the end point position, theoperator turns on a teaching button 47 (FIG. 12), described later on, onthe machine control console 40, storing the tool end point position andthe shape and type of a machining path at the time.

If a shape following the oblique straight line in the entire machiningshape is a corner R shape, for example, then the operator selects themenu of the corner R shape from the machining guidance menu image, andgenerates a designated shape for a corner R shape and registers an endpoint position and shape and type through a teaching process. Since theend point of the preceding designated shape becomes the start point ofthe new designated shape, partial designated shapes are joined forthereby generating a continuous machining path.

The above teaching process is carried out for the entire machiningshape. When the operator finally selects a mode of [TC END] in thesoftware key menu column 259, the final machining shape is generated,and its information is stored as an NC command statement. If theoperator wants to confirm the machining shape at any point of timebefore the final machining shape is generated, then the operator mayselects a mode of [CONFIRM] in the software key menu column 259. In themode of [CONFIRM], the machining shape generated up to that point oftime is displayed as a screen display image.

Finally, a playback function to be performed when a workpiece ismachined along a final machining shape will be described below.

FIG. 10 is a view illustrative of a playback function for machining aworkpiece along a final machining shape. The playback function is afunction to machine a workpiece along a final machining shape that isgenerated using the above teaching function.

When the operator presses a playback button 46 (FIG. 12), describedlater on, on the machine control console 40, a playback screen displayimage 160a is displayed. The playback screen display image 160a includesin its central area a final machining shape 253a that is generated usingthe above teaching function. When the operator operates the manual pulsegenerator 41 or presses a jog feed button 42, the tool effects guidancemachining along the final machining shape 253a.

For automatically effecting guidance machining, the operator enters, inadvance, a feed speed in a feed speed F entering column 260 on theplayback screen display image 160a. In this manner, a feed speed in anautomatic operation mode is determined. When the operator then pressesthe cycle start button 45 (FIG. 12) on the machine control console 40,the tool automatically moves along the final machining shape 253a toeffect guidance machining in response to a turning-on signal from thecycle start button 45.

The playback function is performed each time the operator presses theplayback button 46 (FIG. 12). Therefore, it is possible to machine aplurality of workpieces to the same shape.

In the third embodiment, as described above, partial designated shapesare joined into a final machining shape by the teaching function, andthe workpiece can be machined along the final machining shape by theplayback function. That is, it is possible to machine the workpiececontinuously along the entire machining shape. Since the final machiningshape is stored, a plurality of workpieces can be machined to the sameshape.

FIG. 11 shows a processing sequence of the third embodiment of thepresent invention. In FIG. 11, each numeral following the letter "S"represents a step number.

[S1] First, a machining guidance menu is selected.

[S2] The numerical control apparatus enters a teaching mode when[TEACHING START] in the software key menu column is selected.

[S3] A designated shape is entered according to a guidance screendisplay image.

[S4] The manual pulse generator or the like is operated to move thetool.

[S5] The tool is set to the end point position of the designated shape,and the teaching button is turned on.

[S6] In response to a turning-on signal from the teaching button, thetool position and the shape and type of a machining path are stored.

[S7] Whether the teaching process is finished or not is determined. Iffinished, then control proceeds to a next step S8. If not, then controlreturns to the step S3.

[S8] A final machining shape is stored as NC command statement byselecting [TEACHING END] in the software key menu column.

FIG. 12 is a view showing the machine control console on the machinetool by way of example. The machine control console 40 shown in FIG. 12has the manual pulse generator 41, the selector switch 41b, the jog feedbuttons 42, the setting switch 42a, the direction changing switch 43,the operation changing switch 44, the cycle start button 45, theplayback button 46, and the teaching button 47.

When a handle 41a is turned to the left or right, the manual pulsegenerator 41 generates a pulse signal depending on the rotation of thehandle 41a. The pulse signal, which is composed of two-phase pulses fordetermining the direction in which the handle 41a is turned, is sentthrough the bus 30 to the processor 11 for moving the tool.

The selector switch 41b is a switch for selecting a pulse signalgenerated by the manual pulse generator 41 in either an X-axis direction(X), a Y-axis direction (Y), a Z-axis direction (Z), or a direction (G)which corresponds to the cyclic machining path in the graphic data. Whenthe manual pulse generator 41 is operated to move the tool along thefinal machining shape, the selector switch 41b is set to "G".

The jog feed buttons 42 comprise a total of 8 buttons including positiveand negative feed buttons "+X", "-X", "+Y", "-Y", "+Z", and "-Z" for therespective axes, and positive and negative feed buttons "+GJ", "-GJ"corresponding to the path in the point group data. When the toolmovement along the final machining shape is to be effected by operatinga jog feed button 42, the feed button "+GJ" is used. A turning-on signalproduced when this jog feed button 42 is pressed is sent through the PMC22 and the bus 30 to the processor 11.

The setting switch 42a sets the number of pulses in a certain period oftime which are generated when the jog feed buttons 42 are pressed. Aswith the turning-on signal from the jog feed buttons 42, the set signalSS produced by the setting switch 42a is sent through the PMC 22 and thebus 30 to the processor 11.

The direction changing switch 43 is a switch for selecting whether thetool is to be moved parallel to a designated shape generated accordingto the guidance information or to be moved perpendicularly to thedesignated shape, when "G" is selected by the selector switch 41b andthe manual pulse generator 41 is operated. When the direction changingswitch 43 is set to "H", the tool moves parallel to the designatedshape. When the direction changing switch 43 is set to "V", the toolmoves perpendicularly to the designated shape.

The operation changing switch 44 is a switch for selecting whether thetool movement along the final machining shape is to be effected manuallyor automatically. When the operation changing switch 44 is set to "M",the tool moves manually. When the operation changing switch 44 is set to"Au", the tool moves automatically according to the feed speed commandF.

The cycle start button 45 is a switch for starting an automatic feedwhile the operation changing switch 44 is being set to "Au".Specifically, when the cycle start button 45 is pressed, the tool isautomatically moved along the final machining shape.

The playback button 46 is a button for performing the playback function.When the playback button 46 is pressed, the final machining shape isdisplayed as a playback screen display image as described above.

The teaching button 47 is a button for performing the teaching function.When the teaching button 47 is pressed, the tool position at the time isstored, and designated shapes are joined.

In the third embodiment, as described above, partial designated shapesare joined into a final machining shape by the teaching function, andthe workpiece is machined along the final machining shape by theplayback function. Therefore, it is possible to machine the workpiececontinuously along the entire machining shape. Since the final machiningshape is stored, a plurality of workpieces can be machined to the sameshape.

According to the third embodiment, a designated shape is generated onthe basis of information that has been entered in an interactive mannerby the operator according to guidance information, then partialdesignated shapes are joined into a final machining shape by theteaching function, and the workpiece is machined along the finalmachining shape by the playback function.

Consequently, when the operator operates the manual pulse generator orthe like, the tool can be fed continuously along the final machiningshape. Therefore, the workpiece can be machined continuously along theentire machining shape.

A plurality of workpieces can be machined to the same shape as the finalmachining shape is stored.

A numerical control apparatus may be arranged so as to include all orsome of the embodiments described above.

The present invention is not limited to the above embodiments, butvarious changes and modifications may be made therein without departingfrom the scope of the invention.

We claim:
 1. A numerical control apparatus for controlling a machinetool having at least two axes, comprising:graphic data memory means forstoring graphic data for cyclic machining entered in an interactivefashion according to guidance information; converting means forcalculating a machining path for cyclically machining a workpiece basedon said graphic data and converting said machining path into NCcommands; NC command memory means for storing said NC commands; movementcommand means for outputting an output pulse signal to command movementof said machine tool, said movement command means including a manualpulse generator, a jog feed button, an automatic feed speed commandpreset together with said graphic data, and selecting means forselecting one of a pulse signal generated from said manual pulsegenerator, a pulse signal produced by said jog feed button, and a feedspeed command pulse signal generated based on said automatic feed speedcommand and for outputting said selection as said output pulse signal;and interpolating means for outputting an interpolated pulse signal tomove said machine tool along said machining path based on said outputpulse signal outputted from said movement command means and said storedNC commands.
 2. A numerical control apparatus for controlling a machinetool having at least two axes, comprising:point group data memory meansfor storing point group data entered in an interactive fashion accordingto guidance information; converting means for converting said pointgroup data into NC commands; NC command memory means for storing said NCcommands; movement command means for outputting an output pulse signalto command movement of said machine tool, said movement command meansincluding a manual pulse generator, a jog feed button, a feed speedcommand preset together with said point group data, and selecting meansfor selecting one of a pulse signal generated from said manual pulsegenerator, a pulse signal produced by said jog feed button, and a feedspeed command pulse signal generated based on said feed speed commandand for outputting said selection as said output pulse signal; andinterpolating means for interpolating said output pulse signal to movesaid machine tool to a next point designated by said NC commands whenmachining of the workpiece at one point of said point group data iscompleted, and outputting an interpolated pulse signal.
 3. A numericalcontrol method of controlling a machine tool having at least two axes,comprising the steps of:(a) generating a designated shape of an entiremachining shape based on information entered in an interactive fashionaccording to guidance information; (b) moving said machine tool to anend point position of said designated shape; (c) activating a teachingbutton; (d) storing said end point position and said designated shape;(e) repeating steps (a)-(d) for each designated shape of said entiremachining shape; (f) generating a final machining shape by joining saiddesignated shapes at said end point positions; (g) generating a pulsesignal from one of a manual pulse generator, a jog feed button, and apreset feed speed command; and (h) continuously guiding said machinetool along said final machining shape based on said pulse signal.